﻿using Digitalmes.Core.Domain.Eitites;

namespace Digitalmes.Core.Services;

/// <summary>
/// 参数标准服务
/// </summary>
public interface IParamStandardService : IApplicationService
{
    /// <summary>
    /// 获取所有的标准集合。
    /// </summary>
    /// <returns></returns>
    Task<List<ParamStandard>> GetStandardListAsync();

    /// <summary>
    /// 获取参数标准
    /// </summary>
    /// <param name="paramCode">参数名称</param>
    /// <returns></returns>
    Task<(bool ok, double? min, double? max)> GetStandardAsync(string paramCode);

    /// <summary>
    /// 更改标准
    /// </summary>
    /// <param name="paramCode">参数名称</param>
    /// <param name="min">最小值</param>
    /// <param name="max">最大值</param>
    /// <param name="isEnabled">是否可用</param>
    /// <returns></returns>
    Task ChangeStandardAsync(string paramCode, double min, double max, bool isEnabled);
}
